home *** CD-ROM | disk | FTP | other *** search
- NAME
-
- CheckMem - check any memory while retaining multitasking
-
- FUNCTION
-
- CheckMem is a memory diagnosis tool that can check any memory
- region, even while it is in use, or is unknown to the system.
- CheckMem requires OS 2.01 or later.
-
- USAGE
-
- CheckMem [[FROM] start [TO] end] [TIMES cycles] [FORCE] [QUIET]
- CheckMem FROM,TO,TIMES/N/K,FORCE/S,QUIET/S
-
- SEE THE WARNING SECTION BELOW BEFORE YOU USE CHECKMEM!
-
- Started without arguments, CheckMem will check the memory it finds
- on the Exec memory list. This means all the memory the system knows
- about.
-
- If given a memory region (addresses hexadecimal, with optional
- leading 0x), that region will be checked. CheckMem will first look
- on the Exec memory list whether the system knows that memory
- exists inside the given region. If the system is unaware of the
- memory, CheckMem will abort, unless the FORCE keyword was
- specified. With that keyword, CheckMem will check _any_ address.
- That includes the custom chipset at 0xDFF000, so be *CAREFUL* not
- to specify a region that would include it. Writing to, or even
- reading, the custom chipset registers will cause unexpected
- effects and a certain crash.
-
- Using the QUIET keyword will make CheckMem suppress progress
- information.
-
- CheckMem is Enforcer aware, and will not check unknown addresses
- if it is running. The reason for this is that Enforcer marks,
- using the MMU, unknown memory region out of bounds, and thus
- checking it while Enforcer is running will just create problems
- and not help a bit.
-
- Other MMU tools might have this effect also. CheckMem does not,
- however, look for these. This might create a BIG problem.
-
- In particular, using CheckMem while virtual memory utilities are
- used can create major problems. See the section WARNING below.
-
- CheckMem will let the system go on while memory checking is in
- progress. It checks even the currently allocated memory without
- affecting the programs the memory belongs to.
-
- This is done by checking the memory in small (32 byte) chunks,
- during which the interrupts are disabled. The old contents of the
- memory are placed back after the address is checked against the
- bit patterns 0x00000000, 0xFFFFFFFF, 0x55555555 and 0xAAAAAAAA.
-
- This test can have an effect on timing critical programs. In
- particular, serial I/O can be affected.
-
- Recommended usage:
- Leave CheckMem running for an extended period of time. Not all
- errors happen constantly, so the longer you run it, the more
- likely you are to catch random problems. Try
- CheckMem TIMES 600 QUIET >DF0:CheckMem.log
-
- WARNING
-
- Possible problem areas:
-
- DMA - I can't disable DMA. If your HD controller happens to access
- the memory CheckMem is testing at the very moment, BAD SHIT WILL
- HAPPEN. Solution: Don't access your HD unless you are sure your HD
- controller does not use DMA. Don't use floppies either. There are
- other things to watch out for, but it depends on your system.
-
- MMU - MMU address mapping can create HUGE PROBLEMS. Don't use MMU
- tools (VMM, and GigaMem in particular) while using CheckMem.
- Enforcer shouldn't be a problem.
-
- COPYRIGHT
-
- CheckMem is Copyright © 1994 by Osma Ahvenlampi. All rights
- reserved.
- CheckMem may be freely distributed for no or small fee provided
- that this documentation file is accompanied in unchanged form.
-
- DISCLAIMER
-
- CHECKMEM IS PROVIDED "AS IS". IN USING CHECKMEM, YOU ACCEPT THE
- RESPONSIBILITY FOR ANY DAMAGE OR LOSS THAT MAY OCCUR DURING OR
- BECAUSE OF ITS USE, DIRECTLY OR INDIRECTLY. THE FITNESS OF
- CHECKMEM FOR ANY USE OR PURPOSE IS NOT GUARANTEED. THE AUTHOR IS
- NOT, AND CAN NOT BE HELD LIABLE FOR ANYTHING.
-
- STATUS
-
- CardWare - if you use this program, send a postcard to the author
-
- AUTHOR
-
- Osma Ahvenlampi <Osma Ahvenlampi@hut.fi>
-
- Osma Ahvenlampi
- Rekipellontie 2 F 55
- 00940 Helsinki
- Finland
-